package com.lwj.se;

import java.util.*;

/**
 * Collection�����������������ӽӿ�(����)
 * java.util.List:���Ա��ص��ǿ��Դ���ظ�Ԫ�أ���������
 * java.util.Set:�������ظ��ļ��ϣ��󲿷�ʵ����������ġ�
 */
public class CollectionDemo {
    public void test1(){
        Collection c = new ArrayList();
        Collection c2 = new ArrayList();

        // �жϵ�ǰ�����Ƿ�Ϊ�ռ�
        boolean isEmpty = c.isEmpty();
        //��ռ���
        c.clear();
        /*
         * boolean addAll(Collection c)
         * �����������е�����Ԫ����ӵ���ǰ����
         * �����ú�ǰ����Ԫ�ط����ı��򷵻�true
         */
        c.addAll(c2);

        //ɾ����ǰ��������������ϵĹ���Ԫ�ظ����ļ���Ԫ�ز������仯��
        c.removeAll(c2);
        //�жϵ�ǰ�����Ƿ�������������е�����Ԫ�ء�
        boolean contains = c.containsAll(c2);
    }

    /**
     * ʹ�õ������������ϵ�ͳһ��ʽ��ѭΪ:
     * ��->ȡ->ɾ
     * ����ɾ��Ԫ�ز��Ǳ������
     */
    public void test2(){
        Collection c = new ArrayList();
        c.add("one");
        c.add("#");
        System.out.println(c);
        Iterator it = c.iterator();
        /*
         * �� boolean hasNext() ͨ���������鿴�Ƿ���Ԫ�ؿ��Ա���
         */
        while(it.hasNext()) {
            /*
             * ȡ E next() ͨ��������������һ��Ԫ��
             */
            String str = (String)it.next();
            System.out.println(str);
            if("#".equals(str)) {
                /*
                 * ��������һ��Ҫ�󣬾��Ǳ��� �Ĺ����в���ͨ�����ϵķ��� ��ɾԪ�ء��������ʱ���׳� �쳣
                 */
//				c.remove(str);
                /*
                 * �������ṩ��remove������ �÷�������Ҫ���������ɾ���ľ��Ǳ��α���ͨ��next��ȡ ��Ԫ��
                 */
                it.remove();
            }
        }
        System.out.println(c);
    }
    /**
     * java.util.ArrayList
     * �ڲ�ʹ������ʵ�֣���ѯ���ܸ��ã�������ɾ
     * Ԫ�����ܲ�
     *
     * java.util.LinkedList
     * �ڲ�ʹ������ʵ�֣���ɾԪ�����ܺã�������β
     * ��ɾԪ��������ѣ����ǲ�ѯ���ܲ�
     */
}
